﻿#pragma once
//定义顺序表的结构，顺序表要实现的接口/方法
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
#include "Contact.h"
#define N 10
//typedef int SLDataType;
typedef Info SLDataType;

typedef struct SeqList {
	SLDataType* arr;//定长数组
	int size;//记录顺序表当前有效数据个数
	int capacity;//空间容量,记录顺序表空间大小
}SL;

//初始化和销毁
void SLInit(SL* ps);
void SLDestroy(SL* ps);
void SLPrint(SL* ps);
//扩容
void SLCheckCapacity(SL* ps);
//头部插⼊删除 / 尾部插⼊删除
void SLPushBack(SL* ps, SLDataType x);//尾插
void SLPopBack(SL* ps);
void SLPushFront(SL* ps, SLDataType x);//头插
void SLPopFront(SL* ps);
//指定位置之前插入数据
//删除指定位置数据
void SLInsert(SL* ps, int pos, SLDataType x);
void SLErase(SL* ps, int pos);

int SLFind(SL* ps, SLDataType x);